草庐IT

python - 如何在python中取数字的第n位

全部标签

ruby-on-rails - 如何在 Rails 中创建对象数组?

我需要知道如何在Rails中创建对象数组以及如何向其中添加元素。我是ruby​​onrails的新手,这可能是个愚蠢的问题,但我找不到确切的答案。所以请专家给出一些关于这个的想法 最佳答案 你只需要一个数组:objArray=[]#or,ifyouwanttobeverboseobjArray=Array.new推送,push或使用:objArray.push17>>>[17]objArray>>[17,4]您可以使用任何您喜欢的对象,它不必是特定类型。 关于ruby-on-rails-

ruby - 如何在 Ruby 中打乱数组/哈希?

出于学习目的,这叫什么?正在创建的对象是数组还是散列?stack_of_cards=[]我是这样填的:stack_of_cards这是我的卡片类:classCardattr_accessor:number,:suit,:valuedefinitialize(number,suit,value)@number=number@suit=suit@value=valueenddefto_s"#{@number}of#{@suit}"endend我想打乱这个数组/哈希中的元素(这叫什么?:S)有什么建议吗? 最佳答案 stack_of_ca

ruby - 如何在 Ruby 中动态创建局部变量?

我正在尝试使用eval在Ruby中动态创建局部变量并改变局部变量数组。我在IRB中这样做。eval"t=2"local_variables#=>[:_]eval"t"#=>NameError:undefinedlocalvariableormethod`t'formain:Objectlocal_variables[:_,:t]t#=>NameError:undefinedlocalvariableormethod`t'formain:Object 最佳答案 您必须使用相同的绑定(bind)对象同步评估。否则,单个评估有其自己的范围

ruby - 检查字符串是否仅包含 ruby​​ 中的数字

我有一个字符串作为参数传递给一个函数。在这里,我想检查字符串是否只包含数字。所以我进行了如下检查:defcheck_string(string)result=falseifstring.to_i.to_s.eql?stringresult=trueendresultend但当字符串以0开头时就会出现问题。在这种情况下,将返回false。check_string('123')#=>truecheck_string('0123')#=>false我该如何解决这个问题? 最佳答案 你可以试试下面的方法defcheck_string(str

ruby-on-rails - 如何在 Ruby 中将 MS Excel 日期从 float 转换为日期格式?

尝试在ruby​​脚本中使用roogem解析XLSX文件。在Excel中,日期以DDDDD.ttttt格式存储为float或整数,从1900-01-00(00no01)开始计算。因此,为了转换诸如40396之类的日期-您将使用1900-01-00+40396,您应该得到2010-10-15,但我得到的是2010-08-08。我正在使用active_support/time进行这样的计算:Time.new("1900-01-01")+40396.days我的计算有误还是主动支持有问题?我在Windows7+最新的active_supportgem(3.2.1)上运行ruby​​1.9.3

ruby - 如何在 Windows 7 上正确安装 Compass?

当我从Ruby的bin文件夹以外的任何地方运行compass时,它返回错误:'compass'isnotrecognizedasaninternalorexternalcommand,operableprogramorbatchfile.这件事发生在其他人身上吗?我在某处读到,在Windows32中可能需要一个文件,也许是compass.exe,我不确定,因为那里没有任何东西说compass。知道为什么安装无法完成吗?另外我应该注意,我通过Parallels在Mac上使用Windows7。 最佳答案 确保你有rubyinstalle

ruby - 给定数字的阶乘中尾随零的数量 - Ruby

在尝试计算给定数字的阶乘中尾随零的数量时遇到了一些麻烦。这是Codewars的挑战之一-无法让我通过。zeros(12)=2#=>1*2*3..12=479001600我认为我在这里走错了路,可能有更优雅的ruby方式。这是我目前所掌握的。defzeros(n)x=(1..n).reduce(:*).to_s.scan(/[^0]/)return0ifx==[]returnx[-1].lengthifx!=[]end 最佳答案 这更像是一道数学题。你是对的,你走错了路。(我的意思是你所走的道路将导致一个非常低效的解决方案)首先尝试在

ruby - 如何在我的数据库中存储哈希值?

是否有Ruby或Activerecord方法可以在数据库字段中写入和读取哈希值?我需要编写一个网络实用程序来接受POST数据并将其保存到数据库中,然后再以其原始哈希形式从数据库中提取数据。但理想情况下,不要“知道”结构是什么。换句话说,我的数据存储需要独立于任何特定的哈希键集。例如,有一次外部应用可能会POST到我的应用:"user"=>"Bill","city"=>"NewYork"但另一次外部应用可能会POST到我的应用:"company"=>"FooInc","telephone"=>"555-5555"所以我的实用程序需要将任意散列保存到数据库中的text字段,然后,稍后根据保

ruby-on-rails - 如何在 Rails 中格式化这个国际电话号码?

如果我有这样的国际电话号码:0541754301我怎样才能格式化它来产生这样的东西:0541-754-301 最佳答案 您可以使用ActionView::Helpers::NumberHelper中的number_to_phone(number,options={})方法但是,文档指出此方法会将数字格式化为美国电话号码(例如(555)123-9876)。相反,您可以使用thispatch它增加了提供数字分组的能力::groupings-Specifiesalternategroupings(mustspecify3-elementa

Ruby:如何使用 sprintf() 在数字字符串前面添加零

我想将邮政编码标准化为5位数字,用零替换任何缺失的字符,如下所示:"95616">>"95616""854">>"00854""062">>"00062""0016">>"00016"我试过像这样使用sprintfsprintf("%05s",zipcode)和这样sprintf("%0.5d",zipcode).两者都给出错误的答案。使用s:"95616">>"95616""854">>"854""062">>"062""0016">>"0016"这是正确的字符数,但使用空格而不是零。使用d:"95616">>"95616""854">>"00854""062">>"00050""0